package iut.acy.cut4u.ihm;

import iut.acy.cut4u.dao.AlternativeKeyException;
import iut.acy.cut4u.dao.ClientDAO;
import iut.acy.cut4u.model.Client;
import iut.acy.cut4u.model.FormatDate;
import iut.acy.cut4u.model.Sexe;

import javax.swing.*;

import java.awt.*;
import java.awt.event.KeyEvent;
import java.sql.SQLException;
import java.util.GregorianCalendar;

public class FicheClientAjout extends FicheClient {

	public FicheClientAjout() {
		super();
		this.setTitre();
	}

	public FicheClientAjout(JFrame owner, boolean modale) {
		super(owner, modale);
		this.setTitre();
	}

	public void setTitre() {
		this.setTitle("Ajout Client");
	}

	public Sexe retourneRadioButtonSexe() {
		if(this.rbM.isSelected())
			return Sexe.MASCULIN;
		else if(this.rbF.isSelected())
			return Sexe.FEMININ;
		return Sexe.INCONNU;
	}

	public boolean valide() {
		ClientDAO cltDAO = ClientDAO.getInstance();
		Client c = new Client(0, this.retourneRadioButtonSexe(), this.txtNom.getText(), this.txtPrenom.getText(),
			this.txtAdresse.getText(), this.txtCP.getText(), this.txtAdresse.getText(), this.txtTel.getText(),
				FormatDate.stringToGregorianCalendar(this.txtDateNais.getText()), this.txtMail.getText());
		try {
			cltDAO.getDb().getConnexion().setAutoCommit(true);
			cltDAO.insert(c);
			return true;
		} catch (SQLException e) {
			e.printStackTrace();
		}
		return false;
	}

	public static void main(String[] args) {
		FicheClientAjout f = new FicheClientAjout();
		f.setVisible(true);

	}

}
